For purposes of this disclosure, a "general-purpose computer" or "computer" comprises both hardware and software. The hardware includes physical devices, such as the motherboard and the keyboard controller. The software includes computer-readable programs of instructions, which manipulate the physical devices to operate. The programs include both application programs and system programs. Application programs perform specific tasks for a user, such as solving specific problems. The system software controls the hardware of the computer and the execution of the application programs. System software further includes operating system software, which controls the central processing unit or CPU of the computer, and device drivers, which control the input and output devices (I/O), such as printers, scanners, keyboards, pointing devices, and the like.
Also, for purposes of this disclosure, the term "remote" refers to any physical separation between the DTMF tone generator (e.g., the telephone) and the accessed or host general-purpose computer. The distance may be as near as between two rooms in the same facility or as far as between two distant locations around the world.
Remotely initializing and operating a general-purpose computer is known in the prior art. Certain of the systems often require a remote computer to communicate with the host computer or network via a telephone line and modem. Certain methods for accomplishing these remote sessions require remote control application software, which must be installed on the host computer as well as the remote computer.
PC Anywhere.RTM. and Laplink.RTM. are two examples of such commercially available remote control software programs. These types of remote control software are capable of delivering keystrokes to a host computer via modem-to-modem connections, network connections or serial port connections. However, for a successful link to occur, a computer at the remote end is required to run the remote control software and transmit and receive data signals. Also, the host computer and the remote computer must be in active or operable states, with both computers successfully running the remote control software program. If the host computer malfunctions, there are no means available to remotely reboot or recycle it to continue the remote session. Perfect operation of the remote and the host computers, correct communication settings, correct protocols, including the perfect operation and correct modality of the application software, are all required to have any remote control capability at all. Some system commands are possible. However, their exercise may cause irreversible, fatal conditions that preclude further remote communications or control. These devices are unable to act on the host computer's power supply. They also are incapable of executing a remote ON command, an actual "cold boot", or any other command if the host has suffered any diminution of its operational function.
Other known methods use a selective tone generating telephone as the input device for remotely accessing and controlling the host computer. For example, U.S. Pat. No. 3,582,554 issued to LeBlang discloses apparatus for converting a touch-tone telephone into a remote computer terminal. This is accomplished by a required display panel, which enables the computer terminal user to read the numerical characters that the user and the computer are transmitting to each other. The display panel is coupled either electromagnetically or acoustically to the remote telephone, and converts the communicated audible tones into visually displayed decimal numerals. A modem at the host computer location is required for the remote user to communicate with the host computer. In addition, the host computer has to be in an active state and software needs to be running when the user calls from the remote location. Otherwise, a connection cannot be made and no subsequent exchange of data is possible.
Other known prior art includes the subject matter disclosed in U.S. Pat. Nos. 5,257,384; 5,309,563; 5,410,706; and 5,440,699, all issued to Farrand et al., and all commonly assigned to Compaq Computer Corporation of Houston, Texas. Those patents, in general, disclose systems for remotely rebooting and controlling a host computer. As stated in the '706 Farrand et al patent, for instance, "cold booting" is accomplished by the remote computer simulating the effect of power cycling on the host computer and "warm booting" is accomplished by emulation of the "control" "alt"-"del" keystrokes. The '706 patent, however, requires both a host and remote computer, which must be fully operational or at least have some low level of system operation for a successful link to occur. At the very least, the Compaq patents require the system manager device driver and the network operation system to be minimally operational to accept commands from the system manager. In addition, all commands are accomplished by way of an echo command being issued by the system manager of the networked computer system over the host computer's bus, which includes issuing separate commands in a bus I/O transfer.
Thus, the Compaq patents disclose systems that require minimal system operation of the host computer and successful connection to it via synchronous or asynchronous connections. These systems also require the use of a remote computer and the transmission of data signals. DTMF tones are only utilized for alert signals to the remote user.
Other known prior art includes the powering of a computer using DTMF tones. For example, U.S. Pat. No. 5,596,628 issued to Klein discloses a system for monitoring a telephone line and responding to an incoming signal by powering a computer, and then routing the call to any one of an answering machine, modem or facsimile machine, depending on the nature of the received signal. The Klein system discloses a unidirectional communication with the accessed or host computer. In addition, the user is limited to one of four pre-programmed signals (or any number of user-programmed signals) to the device, which then sends the corresponding series of pre-programmed keystrokes to the computer. The signal always results in either the de-powering of the computer (e.g., a DTRST command) or the launching of application software. The Klein system receives a DTMF signal and the system itself interacts with the host computer, excluding the user from direct access to and control over the host computer. Finally, the host computer must be in an operable status for any operations to be accomplished. If, during the cold boot, the host computer malfunctions, it cannot be corrected from the remote location.
U.S. Pat. No. 5,537,462 issued to Utter discloses a means to activate a normally "OFF" computer terminal and initiate a bi-directional communication between the remote terminal and host computer within the confines of the application software running in the host computer. The receipt of a DTMF tone over a telephone line powers the computer. The Utter patent, however, requires the host computer to be in an operable state when it attempts to power it. If the host computer malfunctions, however, Utter does not provide a way to remotely restore it to an operational status. Finally, the remote control of the host or accessed computer is by way of another remote computer.
In sum, Klein and Utter disclose systems whereby a user-generated DTMF tone triggers a pre-set instruction set in the device. These instructions are executed on the host computer's power supply and/or the host computer, without checking the status of the host computer. A successful link is achieved, therefore, only if the host computer is operating properly. If the host computer experiences any of a wide range of possible malfunctions, there is no mechanism shown in Klein and Utter by which to effect a remedy at the host computer site.
Other known prior art includes "smart" power management systems such as APC's devices. The art embodied in the APC power management device is designed to exercise remote power control of a host computer. These devices control power by one of several methods of communication. A data signal is sent to the device by either direct modem connection or by modem connection through the Internet. In either case, a plurality of relays are activated in the order selected by the user to power various outlets in a power supply, which, in turn, may power a host computer. The basic device controls only the host computer's power source and assumes that the host computer will become operational solely upon the activation of its power source. More involved versions of the same device permit real-time exercise of remote control through the addition of so-called "smart" modules. One such "smart" module contains hardware and software that enable monitoring of the host computer with automated instructions for orderly shutdown while the device supplies temporary power during a power failure. System management is achievable through the addition of a module that permits the device to act as an arbitrator and conduit through an RS232 serial port connection to the host's system agent or system management software. The modules may be used simultaneously to achieve a high degree of remote control.
Here, too, the system management capabilities would not be functional if the host computer experiences a catastrophic failure or malfunction. For example, no system management is possible if the host computer has lost its serial port connection due to any of a wide variety of system malfunctions. Moreover, the module that effects an orderly shutdown is incapable of doing so if the host computer has experienced any of a wide variety of system failures. Additionally, these systems do not support the re-booting of a host computer equipped with an ATX motherboard. Finally, if the host computer has failed, re-cycling and restoring power to the controlled power outlets does not always satisfactorily re-boot or control the host computer.
Accordingly, there is a need for a system and method for remotely initializing, operating, and monitoring a host computer, which is cognizant of the status of the host computer, and which is capable of remotely correcting malfunctions of the host computer. There is also a need for a system and method that enables a remote user to disconnect, and/or reconnect, a host computer to its power source, execute an actual cold boot and/or reboot (or warm boot) of the host computer and then remedy system malfunctions from the remote location. Furthermore, it would be desirable to have a system and method that is capable of remotely re-booting a host computer equipped with an ATX motherboard. It would further be desirable to have a system and method that enables a remote user to control a host computer and its power supply, regardless of the operating status of the host computer. It would also be desirable to have a system and method that enables such remote control, even if the host computer has failed due to any of a wide variety of fatal system errors, malfunctions, operational diminution of the system, or other conditions commonly called "system failures", "crashes" or "lock-ups." It would be desirable to have a system and method that enables real-time remote keystroke insertion and power control with results being reported to the remote user in real time, bi-directionally, and without software operating on the host computer. It would be desirable to have a system and method that enables any of the aforementioned remote capabilities using a standard touch-tone telephone (without the need for a remote computer). Finally, it would be desirable to have a system and method that is capable of remotely turning the computer OFF and then ON again to both conserve energy from a power management standpoint and to allow for security of the host computer by preventing access to a non-authorized user who may be at the host computer's location.